SaBRe: load-time selective binary rewriting

نویسندگان

چکیده

Abstract Binary rewriting consists in disassembling a program to modify its instructions. However, existing solutions suffer from shortcomings terms of soundness and performance. We present SaBRe , load-time system for selective binary rewriting. rewrites specific constructs—particularly calls functions—when the is loaded into memory, intercepts them using plugins through simple API. also discuss theoretical underpinnings developed two backends—for —which were used implement three plugins: fast call tracer, multi-version executor, fault injector. Our evaluation shows that imposes little overhead, typically below 3%.

برای دانلود باید عضویت طلایی داشته باشید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Software Power Optimization via Post-Link-Time Binary Rewriting

It is well known that compiler optimizations can significantly reduce the energy usage of a program. However, the traditional model of compilation imposes inherent limits on the extent of code optimization possible at compile time. In particular, analyses and optimizations are typically limited to individual procedures, and hence cannot cross procedural and module boundaries as well as the boun...

متن کامل

Retrospective Protection utilizing Binary Rewriting

Buffer overflow vulnerabilities present a common threat. To encounter this issue, operating system support and compile-time security hardening measures have been introduced. Unfortunately, these are not always part of the shipped object code. We present design and implementation of BinProtect, a binary rewriting tool, capable of retrospectively protecting binaries, which have not been sufficien...

متن کامل

Binary Rewriting without Relocation Information

Binary rewriting softwares transform executables by maintaining the original binary’s functionality, while improving it in one or more metrics, such as runtime performance, energy use, memory use, security, and reliability. Existing static binary rewriters are unable to rewrite binaries that do not contain relocation information, which is typically discarded by linkers unless specifically instr...

متن کامل

Sabre

The Single Army Battlefield Requirements Eval-uator (SABRE) is a decision aid that combines rule-driven scoring strategies and domain-specific heuristics to solve a constraint satisfaction problem. The main SABRE algorithm performs a function called " sourcing, " which refers to the allocation of resources to satisfy a set of requirements that may or may not be feasible in terms of the resource...

متن کامل

Binary Decision Diagrams by Shared Rewriting

In this paper we propose a uniform description of basic BDD theory and algorithms by means of term rewriting. Since a BDD is a DAG instead of a tree we need a notion of shared rewriting and develop appropriate theory. A rewriting system is presented by which canonical forms can be obtained. Various reduction strategies give rise to di erent algorithms. A layerwise strategy is proposed having th...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: International Journal on Software Tools for Technology Transfer

سال: 2022

ISSN: ['1433-2779', '1433-2787']

DOI: https://doi.org/10.1007/s10009-021-00644-w